Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Index positional accuracy and add to obs API #1207

Open
loarie opened this issue Nov 29, 2016 · 7 comments
Open

Index positional accuracy and add to obs API #1207

loarie opened this issue Nov 29, 2016 · 7 comments

Comments

@loarie
Copy link
Member

loarie commented Nov 29, 2016

There are use cases where people want to be able to filter by positional accuracy, but people don't seem to want to mix positional accuracy with data quality #1206.

So this issue proposes indexing positional accuracy and adding it to the obs API.

@kueda - can you explain how private_positional_accuracy and positional_accuracy work as relating to this use case? Which one should be indexed?

@kueda
Copy link
Member

kueda commented Dec 1, 2016

I honestly don't know what private_positional_accuracy is supposed to do, probably something I never should have added. Positional accuracy / precision doesn't really need to be private if we're managing coordinate privacy correctly, right, or am I missing something?

That said, I do think it's important that we index public_positional_accuracy and positional_accuracy. public_positional_accuracy is either the positional_accuracy or the diagonal of the obscuration cell, whichever is bigger, i.e. it's the largest relevant positional accuracy we can show in public, and is therefore the best field to use for filtering. However, we also want the positional_accuracy so users can view the positional_accuracy of their own obs, even if the coordinates are obscured.

@loarie
Copy link
Member Author

loarie commented Jul 21, 2017

I meant by this issue that we include accuracy (and we really should change this to precision everywhere to be more ... precise) in the obs search api http://api.inaturalist.org/v1/docs/#!/Observations/get_observations
so I could say give me all obs with accuracy <5m

I don't think this has been implemented yet right?

@loarie loarie reopened this Jul 21, 2017
@pleary
Copy link
Member

pleary commented Jan 8, 2018

@loarie can you specify more of the requirements here. As said above, we have the public_positional_accuracy, and the private_positional_accuracy. So when you say give me all obs with accuracy <5m, what exactly gets returned?

Do you want two parameters, one for each field? Or a single parameter that does something clever, like use the private_ field for your own obs and the public_ field for other obs (which we might want to extend further to obs from projects you manage that release rights, etc...). Do you want to distinguish between obs w/ a precision of 0 vs obs w/o a precision (like do we need a precision=false option)?

@loarie
Copy link
Member Author

loarie commented Apr 23, 2018

@pleary - I don't think private_positional_accuracy is being used. Is that correct?

@pleary
Copy link
Member

pleary commented Apr 23, 2018

I honestly have no idea what private_positional_accuracy is or if its used. It looks like there is code to export it. But its not indexed in Elasticsearch. We're only indexing positional_accuracy and public_positional_accuracy.

So what I'll need to know is, given we are indexing these two fields, what new parameter(s) would you like the API to support, and how should those filters work?

@loarie
Copy link
Member Author

loarie commented Apr 23, 2018

for my (ie the atlas) purposes, I'd just want access to positional_accuracy. Would it be possible to have a filter like &positional_accuracy<5 which would return all obs with positional accuracy less than 5 m?

@loarie
Copy link
Member Author

loarie commented Jun 19, 2019

revisiting this - we now have acc (boolean), acc_below (meters), and acc_above (meters) in the API.

For atlas purposes, we'll need ( acc=false OR acc_below=x ) ie all observations with either no accuracy or an accuracy below some value.

@pleary - any objection to adding acc_false_or_below (meters) to the API and as a URL param?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants